/**
 * 基本数据类型:null(空引用数据类型) undefined(未定义) number(数字类型) string(字符串类型)boolean(布尔类型)
 * 引用数据类型:object类型 
 * 数组 函数 对象 是object子类型
 */

// 2.string 类型 字符串类型
//var a='hello'
//var b='world'
//var c='10'
//console.log(a,b,c,typeof a,typeof b,typeof c)
//3.boolean数据类型 true false
//var a=true;
//var b=false;
//console.log(a,b,typeof a,typeof b);

//4.null 空引用类型
//var a=null;
//console.log(a,typeof a);//object

//5.undefined 未定义
var a=undefined;
var b;
console.log(a,b,typeof a,typeof b);

/**
 * 对象 引用数据类型
 * 创建对象的两种方式:
 * 1.字面量
 * 2.构造函数方式创建对象
 */
var obj={
    name:'李四',
    age:12,
    gender:'male'
};
//console.log(obj,typeof obj);
//var obj1=new Object();

//访问对象中的某一个属性 点访问法 中括号访问法
console.log(obj.age);
console.log(obj['gender'])

//新增属性 如果属性存在则是重新赋值 不存在则是新增
obj.age=30;
obj.weight='20kg';
console.log(obj);

//删除对象属性 delete
delete obj.name;
console.log(obj,'删除name 属性');

/**
 * 数组 array
 * 创建数组:
 * 1.直接字面量
 * var arr=[1,2,3,4];
console.log(arr,typeof arr);
 * 2.使用构造函数
    var arr=new Array(10,null,undefinde,true,'hello',{name:"zhangsan"})
    var arr =new Array(10);//10不作为数组元素 作为数组长度
    var arr=['hello',10,null,underfined,true,{name:'李四'}]
    console.log(arr.length);//数组长度
    //访问数组元素 arr[index] index索引 下标 从0开始
    console.log(arr[2],arr[arr.length-1].name);
    var arr = new Array('terry','robin');
    console.log(arr);

    var arr=[1,2,3,4,5];
    arr.length++;
    arr.length--;
    console.log(arr);
    arr[7]=12;
    console.log(arr,arr.length);
    

    let arr=['hello','terry',10,null,true];
    //for (初始条件；结束条件;迭代条件)
    for(let i=0;i<arr.length;i++){
    console.log(arr[i]);
    }
    //for in 循环
    for(let index in arr){
      console.log(arr[index]);
      }
      for(let key of arr){
       console.log(key,'key表示每一个数组元素') 
      }
       let obj1={
       name:'zhangsan',
       age:,
       gender:'male'
       }
       for(let key in obj1){
        console.log(key,obj1[key]);
       }
        

 */




